load("@io_bazel_rules_go//go:def.bzl", "go_library")
load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library")
load("@rules_proto//proto:defs.bzl", "proto_library")

# gazelle:exclude non_standard_names_grpc.pb.go

package(default_visibility = ["//visibility:public"])

proto_library(
    name = "examplepb_proto",
    srcs = [
        "example.proto",
        "non_standard_names.proto",
        "proto2.proto",
        "proto3.proto",
    ],
    deps = [
        "@com_google_protobuf//:any_proto",
        "@com_google_protobuf//:duration_proto",
        "@com_google_protobuf//:empty_proto",
        "@com_google_protobuf//:field_mask_proto",
        "@com_google_protobuf//:struct_proto",
        "@com_google_protobuf//:timestamp_proto",
        "@com_google_protobuf//:wrappers_proto",
        "@googleapis//google/api:annotations_proto",
    ],
)

go_proto_library(
    name = "examplepb_go_proto",
    compilers = [
        "//:go_apiv2",
        "//:go_grpc",
    ],
    importpath = "github.com/grpc-ecosystem/grpc-gateway/v2/runtime/internal/examplepb",
    proto = ":examplepb_proto",
    deps = [
        "@org_golang_google_genproto_googleapis_api//annotations",
    ],
)

go_library(
    name = "examplepb",
    embed = [":examplepb_go_proto"],
    importpath = "github.com/grpc-ecosystem/grpc-gateway/v2/runtime/internal/examplepb",
)

alias(
    name = "go_default_library",
    actual = ":examplepb",
    visibility = ["//runtime:__subpackages__"],
)
